package com.px.project.module.it.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import com.px.project.module.it.entity.BranchItem;
import com.px.project.module.it.vo.ItemEquipmentVo;
import com.px.project.module.it.vo.ItemJobVo;
import com.px.project.module.it.vo.ItemMaterialVo;

import java.util.List;

/**
 * 分部分项工程信息 Mapper 接口
 *
 * @author 品讯科技
 * @since 2023-10-31
 */
public interface BranchItemMapper extends BaseMapper<BranchItem> {

    /**
     * 按项目获取材料信息
     *
     * @param itemId 项目 ID
     * @return {@link List }<{@link MaterialInfoBackup }>
     * @author 品讯科技
     * @date 2024-08
     */
    List<ItemMaterialVo> getMaterialVoByItem(@Param("itemId") Long itemId);

    /**
     * 按项目获取设备 VO
     *
     * @param itemId 项目 ID
     * @return {@link List }<{@link ItemEquipmentVo }>
     * @author 品讯科技
     * @date 2024-08
     */
    List<ItemEquipmentVo> getEquipmentVoByItem(@Param("itemId") Long itemId);

    /**
     * 按项目获取作业 VO
     *
     * @param itemId 项目 ID
     * @return {@link List }<{@link ItemJobVo }>
     * @author 品讯科技
     * @date 2024-08
     */
    List<ItemJobVo> getJobVoByItem(@Param("itemId") Long itemId);
}
